home *** CD-ROM | disk | FTP | other *** search
/ Motor Sport Digital Archive Collection 1960s / Motor Sport Digital Archive Collection 1960s.iso / main.swf / scripts / views / Presentation.as < prev    next >
Encoding:
Text File  |  2008-05-21  |  27.6 KB  |  871 lines

  1. package views
  2. {
  3.    import events.NavigationEvent;
  4.    import flash.accessibility.*;
  5.    import flash.debugger.*;
  6.    import flash.display.*;
  7.    import flash.errors.*;
  8.    import flash.events.*;
  9.    import flash.external.*;
  10.    import flash.filters.*;
  11.    import flash.geom.*;
  12.    import flash.media.*;
  13.    import flash.net.*;
  14.    import flash.printing.*;
  15.    import flash.profiler.*;
  16.    import flash.system.*;
  17.    import flash.text.*;
  18.    import flash.ui.*;
  19.    import flash.utils.*;
  20.    import flash.xml.*;
  21.    import model.PresentationModel;
  22.    import mx.binding.*;
  23.    import mx.collections.ArrayCollection;
  24.    import mx.containers.Canvas;
  25.    import mx.controls.Alert;
  26.    import mx.core.UIComponentDescriptor;
  27.    import mx.core.mx_internal;
  28.    import mx.events.FlexEvent;
  29.    import mx.events.PropertyChangeEvent;
  30.    import mx.rpc.events.FaultEvent;
  31.    import mx.rpc.events.ResultEvent;
  32.    import mx.rpc.http.mxml.HTTPService;
  33.    import mx.styles.*;
  34.    
  35.    public class Presentation extends Canvas
  36.    {
  37.       private static var _watcherSetupUtil:IWatcherSetupUtil;
  38.       
  39.       private var _bindings:Array;
  40.       
  41.       [Bindable]
  42.       private var _1850815144splashString:String = "1957";
  43.       
  44.       public var _bindingsByDestination:Object;
  45.       
  46.       [Bindable]
  47.       private var _385513595dataRequest:HTTPService;
  48.       
  49.       [Bindable]
  50.       private var _3079651demo:Demo;
  51.       
  52.       public var _bindingsBeginWithWord:Object;
  53.       
  54.       [Bindable]
  55.       private var _623572788splashImage:String = "bg-image.jpg";
  56.       
  57.       [Bindable]
  58.       private var _705504356myPrintJob:MyPrintJob;
  59.       
  60.       [Bindable]
  61.       private var _1399041528_BottomNav1:BottomNav;
  62.       
  63.       [Bindable]
  64.       private var _1857328081presentationModel:PresentationModel;
  65.       
  66.       private var nextIssueSelect:int;
  67.       
  68.       [Bindable]
  69.       private var _951530617content:Content;
  70.       
  71.       private var nextYearSelect:int;
  72.       
  73.       private var _watchers:Array;
  74.       
  75.       private var nextPageSelect:int;
  76.       
  77.       private var _documentDescriptor_:UIComponentDescriptor;
  78.       
  79.       [Bindable]
  80.       private var _3141bg:SplashImage;
  81.       
  82.       public function Presentation()
  83.       {
  84.          _documentDescriptor_ = new UIComponentDescriptor({
  85.             "type":Canvas,
  86.             "propertiesFactory":function():Object
  87.             {
  88.                return {"childDescriptors":[new UIComponentDescriptor({
  89.                   "type":MyPrintJob,
  90.                   "id":"myPrintJob",
  91.                   "propertiesFactory":function():Object
  92.                   {
  93.                      return {"x":1280};
  94.                   }
  95.                }),new UIComponentDescriptor({
  96.                   "type":SplashImage,
  97.                   "id":"bg",
  98.                   "propertiesFactory":function():Object
  99.                   {
  100.                      return {"visible":false};
  101.                   }
  102.                }),new UIComponentDescriptor({
  103.                   "type":TopNav,
  104.                   "events":{
  105.                      "browseByCover":"___TopNav1_browseByCover",
  106.                      "searchTab":"___TopNav1_searchTab",
  107.                      "demo":"___TopNav1_demo"
  108.                   },
  109.                   "stylesFactory":function():void
  110.                   {
  111.                      this.top = 0;
  112.                   }
  113.                }),new UIComponentDescriptor({
  114.                   "type":Content,
  115.                   "id":"content",
  116.                   "events":{
  117.                      "yearSelect":"__content_yearSelect",
  118.                      "issueSelect":"__content_issueSelect",
  119.                      "selectPage":"__content_selectPage",
  120.                      "showSearchResult":"__content_showSearchResult"
  121.                   },
  122.                   "propertiesFactory":function():Object
  123.                   {
  124.                      return {"y":45};
  125.                   }
  126.                }),new UIComponentDescriptor({
  127.                   "type":BottomNav,
  128.                   "id":"_BottomNav1",
  129.                   "events":{
  130.                      "spreadsTab":"___BottomNav1_spreadsTab",
  131.                      "print":"___BottomNav1_print",
  132.                      "readMode":"___BottomNav1_readMode",
  133.                      "spreadMode":"___BottomNav1_spreadMode",
  134.                      "startPage":"___BottomNav1_startPage",
  135.                      "nextPage":"___BottomNav1_nextPage",
  136.                      "prevPage":"___BottomNav1_prevPage",
  137.                      "endPage":"___BottomNav1_endPage",
  138.                      "selectPage":"___BottomNav1_selectPage"
  139.                   },
  140.                   "stylesFactory":function():void
  141.                   {
  142.                      this.bottom = 0;
  143.                   }
  144.                }),new UIComponentDescriptor({
  145.                   "type":Demo,
  146.                   "id":"demo",
  147.                   "events":{"demoExit":"__demo_demoExit"},
  148.                   "propertiesFactory":function():Object
  149.                   {
  150.                      return {"visible":false};
  151.                   }
  152.                })]};
  153.             }
  154.          });
  155.          _623572788splashImage = "bg-image.jpg";
  156.          _1850815144splashString = "1957";
  157.          super();
  158.          mx_internal::_document = this;
  159.          if(!this.styleDeclaration)
  160.          {
  161.             this.styleDeclaration = new CSSStyleDeclaration();
  162.          }
  163.          this.styleDeclaration.defaultFactory = function():void
  164.          {
  165.             this.backgroundColor = 6381920;
  166.          };
  167.          this.percentWidth = 100;
  168.          this.percentHeight = 100;
  169.          this.horizontalScrollPolicy = "off";
  170.          this.verticalScrollPolicy = "off";
  171.          _HTTPService1_i();
  172.          this.addEventListener("creationComplete",___Canvas1_creationComplete);
  173.       }
  174.       
  175.       public static function set watcherSetupUtil(param1:IWatcherSetupUtil) : void
  176.       {
  177.          Presentation._watcherSetupUtil = param1;
  178.       }
  179.       
  180.       private function startPageHandler(param1:Event) : void
  181.       {
  182.          trace("startPageHandler");
  183.          this.pageSelect(0);
  184.          content.hideTabs();
  185.       }
  186.       
  187.       private function message(param1:String) : void
  188.       {
  189.          Alert.show(param1,"Hint");
  190.       }
  191.       
  192.       public function set _BottomNav1(param1:BottomNav) : void
  193.       {
  194.          var _loc2_:Object = null;
  195.          _loc2_ = this._1399041528_BottomNav1;
  196.          if(_loc2_ !== param1)
  197.          {
  198.             this._1399041528_BottomNav1 = param1;
  199.             dispatchEvent(PropertyChangeEvent.createUpdateEvent(this,"_BottomNav1",_loc2_,param1));
  200.          }
  201.       }
  202.       
  203.       private function printHandler(param1:Event) : void
  204.       {
  205.          trace("printHandler");
  206.          if(0 == presentationModel.currentPage || presentationModel.numPages - 1 == presentationModel.currentPage)
  207.          {
  208.             myPrintJob.twoPages = false;
  209.          }
  210.          else
  211.          {
  212.             myPrintJob.twoPages = true;
  213.          }
  214.          myPrintJob.printPages();
  215.       }
  216.       
  217.       private function dataHandler(param1:ResultEvent) : void
  218.       {
  219.          var _loc2_:* = undefined;
  220.          trace("dataHandler " + param1.result);
  221.          _loc2_ = param1.result.years.year;
  222.          if(false == _loc2_ instanceof ArrayCollection)
  223.          {
  224.             presentationModel.years = new ArrayCollection(new Array(_loc2_));
  225.          }
  226.          else
  227.          {
  228.             presentationModel.years = _loc2_;
  229.          }
  230.          if(Boolean(param1.result.splashimage) && Boolean(param1.result.splashimage.value))
  231.          {
  232.             splashImage = param1.result.splashimage.value as String;
  233.          }
  234.          if(Boolean(param1.result.splashstring) && Boolean(param1.result.splashstring.value))
  235.          {
  236.             splashString = param1.result.splashstring.value.toString();
  237.          }
  238.          yearSelect(0);
  239.          bg.visible = true;
  240.       }
  241.       
  242.       private function pageSelect(param1:int) : void
  243.       {
  244.          var _loc2_:PresentationModel = null;
  245.          if(0 > param1 || presentationModel.numPages <= param1)
  246.          {
  247.             trace("invalid page selection " + param1 + " num pages " + presentationModel.numPages);
  248.             return;
  249.          }
  250.          if(-1 == presentationModel.numPages)
  251.          {
  252.             trace("-1 == numPages");
  253.             message("Use \'Browse By Cover\' to choose a magazine.");
  254.             return;
  255.          }
  256.          _loc2_ = presentationModel.clone();
  257.          _loc2_.currentPage = param1;
  258.          _loc2_.pageString = getPageNumber(param1);
  259.          _loc2_.imageURL = _loc2_.yearString + "/" + _loc2_.filePrefix + "-" + _loc2_.pageString + ".jpg";
  260.          presentationModel = _loc2_;
  261.          trace("pageSelect " + presentationModel.imageURL);
  262.          content.showSomething();
  263.       }
  264.       
  265.       private function pageSelectHandler(param1:NavigationEvent) : void
  266.       {
  267.          pageSelect(param1.eventData as int);
  268.       }
  269.       
  270.       [Bindable(event="propertyChange")]
  271.       public function get bg() : SplashImage
  272.       {
  273.          return this._3141bg;
  274.       }
  275.       
  276.       private function yearFromString(param1:String) : int
  277.       {
  278.          var _loc2_:Number = NaN;
  279.          var _loc3_:String = null;
  280.          trace("yearFromString " + param1);
  281.          if(null == presentationModel.years)
  282.          {
  283.             return -1;
  284.          }
  285.          _loc2_ = 0;
  286.          while(_loc2_ < presentationModel.years.length)
  287.          {
  288.             _loc3_ = presentationModel.years.getItemAt(_loc2_).value;
  289.             if(param1 == _loc3_)
  290.             {
  291.                return _loc2_;
  292.             }
  293.             _loc2_++;
  294.          }
  295.          return -1;
  296.       }
  297.       
  298.       public function __content_issueSelect(param1:NavigationEvent) : void
  299.       {
  300.          issueSelectHandler(param1);
  301.       }
  302.       
  303.       public function ___TopNav1_demo(param1:NavigationEvent) : void
  304.       {
  305.          demoHandler(param1);
  306.       }
  307.       
  308.       public function __demo_demoExit(param1:NavigationEvent) : void
  309.       {
  310.          demoExitHandler(param1);
  311.       }
  312.       
  313.       private function set presentationModel(param1:PresentationModel) : void
  314.       {
  315.          var _loc2_:Object = null;
  316.          _loc2_ = this._1857328081presentationModel;
  317.          if(_loc2_ !== param1)
  318.          {
  319.             this._1857328081presentationModel = param1;
  320.             dispatchEvent(PropertyChangeEvent.createUpdateEvent(this,"presentationModel",_loc2_,param1));
  321.          }
  322.       }
  323.       
  324.       [Bindable(event="propertyChange")]
  325.       private function get presentationModel() : PresentationModel
  326.       {
  327.          return this._1857328081presentationModel;
  328.       }
  329.       
  330.       public function set bg(param1:SplashImage) : void
  331.       {
  332.          var _loc2_:Object = null;
  333.          _loc2_ = this._3141bg;
  334.          if(_loc2_ !== param1)
  335.          {
  336.             this._3141bg = param1;
  337.             dispatchEvent(PropertyChangeEvent.createUpdateEvent(this,"bg",_loc2_,param1));
  338.          }
  339.       }
  340.       
  341.       public function ___BottomNav1_startPage(param1:NavigationEvent) : void
  342.       {
  343.          startPageHandler(param1);
  344.       }
  345.       
  346.       private function nextPageHandler(param1:Event) : void
  347.       {
  348.          var _loc2_:int = 0;
  349.          trace("nextPageHandler");
  350.          _loc2_ = presentationModel.currentPage + 1;
  351.          if(presentationModel.numPages > _loc2_)
  352.          {
  353.             pageSelect(_loc2_);
  354.             content.hideTabs();
  355.          }
  356.       }
  357.       
  358.       private function spreadModeHandler(param1:Event) : void
  359.       {
  360.          trace("spreadModeHandler");
  361.          content.spreadMode();
  362.       }
  363.       
  364.       [Bindable(event="propertyChange")]
  365.       public function get content() : Content
  366.       {
  367.          return this._951530617content;
  368.       }
  369.       
  370.       public function __dataRequest_fault(param1:FaultEvent) : void
  371.       {
  372.          faultHandler(param1);
  373.       }
  374.       
  375.       private function init() : void
  376.       {
  377.          presentationModel = new PresentationModel();
  378.          dataRequest.send();
  379.       }
  380.       
  381.       public function __content_selectPage(param1:NavigationEvent) : void
  382.       {
  383.          selectPageHandler(param1);
  384.       }
  385.       
  386.       private function readModeHandler(param1:Event) : void
  387.       {
  388.          trace("readModeHandler");
  389.          content.readMode();
  390.       }
  391.       
  392.       public function set content(param1:Content) : void
  393.       {
  394.          var _loc2_:Object = null;
  395.          _loc2_ = this._951530617content;
  396.          if(_loc2_ !== param1)
  397.          {
  398.             this._951530617content = param1;
  399.             dispatchEvent(PropertyChangeEvent.createUpdateEvent(this,"content",_loc2_,param1));
  400.          }
  401.       }
  402.       
  403.       [Bindable(event="propertyChange")]
  404.       private function get splashString() : String
  405.       {
  406.          return this._1850815144splashString;
  407.       }
  408.       
  409.       private function yearSelectHandler(param1:NavigationEvent) : void
  410.       {
  411.          trace("yearSelectHandler " + param1.eventData.index);
  412.          this.nextYearSelect = param1.eventData.index as int;
  413.          yearSelect(this.nextYearSelect);
  414.       }
  415.       
  416.       private function prevPageHandler(param1:Event) : void
  417.       {
  418.          var _loc2_:int = 0;
  419.          trace("prevPageHandler");
  420.          _loc2_ = presentationModel.currentPage - 1;
  421.          if(0 <= _loc2_)
  422.          {
  423.             pageSelect(_loc2_);
  424.             content.hideTabs();
  425.          }
  426.       }
  427.       
  428.       private function selectSpread(param1:int, param2:int, param3:int) : void
  429.       {
  430.          var _loc4_:PresentationModel = null;
  431.          var _loc5_:Object = null;
  432.          var _loc6_:Object = null;
  433.          var _loc7_:RegExp = null;
  434.          var _loc8_:Object = null;
  435.          trace("selectSpread with " + param1 + ", " + param2 + ", " + param3);
  436.          if(0 > param1 || presentationModel.years.length <= param1)
  437.          {
  438.             trace("error invalid year selected " + param1);
  439.             return;
  440.          }
  441.          _loc4_ = presentationModel.clone();
  442.          _loc4_.currentYear = param1;
  443.          _loc5_ = presentationModel.years.getItemAt(param1);
  444.          _loc4_.issues = _loc5_.issue;
  445.          _loc4_.yearString = _loc5_.value;
  446.          trace("selectSpread year is " + _loc5_.value);
  447.          if(0 > param2 || _loc4_.issues.length <= param2)
  448.          {
  449.             trace("invalid issue selection " + param2);
  450.             return;
  451.          }
  452.          _loc4_.currentIssue = param2;
  453.          _loc6_ = _loc4_.issues.getItemAt(_loc4_.currentIssue);
  454.          _loc4_.filePrefix = _loc6_.file;
  455.          _loc4_.numPages = _loc6_.pages;
  456.          _loc4_.twoPageBack = true == _loc6_.twoPageBack ? true : false;
  457.          _loc7_ = /([0-9]+)\s([A-Za-z]+)\s([0-9]+)/ig;
  458.          _loc8_ = _loc7_.exec(_loc6_.file);
  459.          _loc4_.monthString = _loc8_[2];
  460.          trace("issue Selected issue is " + _loc4_.currentIssue + " month " + _loc4_.monthString);
  461.          if(0 > param3 || _loc4_.numPages <= param3)
  462.          {
  463.             trace("invalid page selection " + param3 + " available " + _loc4_.numPages);
  464.             return;
  465.          }
  466.          if(-1 == _loc4_.numPages)
  467.          {
  468.             trace("-1 == numPages");
  469.             message("Use \'Browse By Cover\' to choose a magazine.");
  470.             return;
  471.          }
  472.          _loc4_.currentPage = param3;
  473.          _loc4_.pageString = getPageNumber(param3);
  474.          _loc4_.imageURL = _loc4_.yearString + "/" + _loc4_.filePrefix + "-" + _loc4_.pageString + ".jpg";
  475.          trace("selectSpread finished: " + _loc4_.currentPage + " image " + _loc4_.imageURL);
  476.          presentationModel = _loc4_;
  477.          bg.visible = false;
  478.          content.showSomething();
  479.       }
  480.       
  481.       private function showSearchResultHandler(param1:NavigationEvent) : void
  482.       {
  483.          var _loc2_:Object = null;
  484.          _loc2_ = param1.eventData;
  485.          selectSpread(yearFromString(_loc2_.year),issueFromString(_loc2_.month),_loc2_.page);
  486.          bg.visible = false;
  487.          content.showSomething();
  488.       }
  489.       
  490.       public function ___BottomNav1_prevPage(param1:NavigationEvent) : void
  491.       {
  492.          prevPageHandler(param1);
  493.       }
  494.       
  495.       private function searchTabHandler(param1:Event) : void
  496.       {
  497.          content.searchTabToggle();
  498.       }
  499.       
  500.       private function _HTTPService1_i() : HTTPService
  501.       {
  502.          var _loc1_:HTTPService = null;
  503.          _loc1_ = new HTTPService();
  504.          dataRequest = _loc1_;
  505.          _loc1_.url = "data/contents.xml";
  506.          _loc1_.addEventListener("result",__dataRequest_result);
  507.          _loc1_.addEventListener("fault",__dataRequest_fault);
  508.          _loc1_.initialized(this,"dataRequest");
  509.          return _loc1_;
  510.       }
  511.       
  512.       [Bindable(event="propertyChange")]
  513.       public function get demo() : Demo
  514.       {
  515.          return this._3079651demo;
  516.       }
  517.       
  518.       public function __dataRequest_result(param1:ResultEvent) : void
  519.       {
  520.          dataHandler(param1);
  521.       }
  522.       
  523.       private function endPageHandler(param1:Event) : void
  524.       {
  525.          trace("endPageHandler");
  526.          this.pageSelect(presentationModel.numPages - 1);
  527.          content.hideTabs();
  528.       }
  529.       
  530.       [Bindable(event="propertyChange")]
  531.       public function get _BottomNav1() : BottomNav
  532.       {
  533.          return this._1399041528_BottomNav1;
  534.       }
  535.       
  536.       public function ___BottomNav1_print(param1:NavigationEvent) : void
  537.       {
  538.          printHandler(param1);
  539.       }
  540.       
  541.       public function ___BottomNav1_selectPage(param1:NavigationEvent) : void
  542.       {
  543.          bottomNavSelectPageHandler(param1);
  544.       }
  545.       
  546.       public function ___BottomNav1_spreadMode(param1:NavigationEvent) : void
  547.       {
  548.          spreadModeHandler(param1);
  549.       }
  550.       
  551.       private function issueFromString(param1:String) : int
  552.       {
  553.          var _loc2_:Number = NaN;
  554.          var _loc3_:String = null;
  555.          var _loc4_:RegExp = null;
  556.          var _loc5_:String = null;
  557.          if(null == presentationModel.issues)
  558.          {
  559.             return -1;
  560.          }
  561.          trace("issueFromString " + param1);
  562.          _loc2_ = 0;
  563.          while(_loc2_ < presentationModel.issues.length)
  564.          {
  565.             _loc3_ = presentationModel.issues.getItemAt(_loc2_).file;
  566.             _loc4_ = /([0-9]+)\s([A-Za-z]+)\s([0-9]+)/ig;
  567.             _loc5_ = _loc3_.replace(_loc4_,"$2");
  568.             trace("month " + _loc5_);
  569.             if(param1 == _loc5_)
  570.             {
  571.                return _loc2_;
  572.             }
  573.             _loc2_++;
  574.          }
  575.          return -1;
  576.       }
  577.       
  578.       private function issueSelectHandler(param1:NavigationEvent) : void
  579.       {
  580.          trace("issueSelectHandler " + param1.eventData.index);
  581.          selectSpread(nextYearSelect,param1.eventData.index as int,0);
  582.       }
  583.       
  584.       private function demoExitHandler(param1:Event) : void
  585.       {
  586.          demo.visible = false;
  587.       }
  588.       
  589.       public function ___BottomNav1_nextPage(param1:NavigationEvent) : void
  590.       {
  591.          nextPageHandler(param1);
  592.       }
  593.       
  594.       public function __content_showSearchResult(param1:NavigationEvent) : void
  595.       {
  596.          showSearchResultHandler(param1);
  597.       }
  598.       
  599.       public function ___Canvas1_creationComplete(param1:FlexEvent) : void
  600.       {
  601.          init();
  602.       }
  603.       
  604.       public function ___BottomNav1_spreadsTab(param1:NavigationEvent) : void
  605.       {
  606.          spreadsTabHandler(param1);
  607.       }
  608.       
  609.       private function getPageNumber(param1:int) : String
  610.       {
  611.          var _loc2_:String = null;
  612.          _loc2_ = param1.toString();
  613.          if(10 > param1)
  614.          {
  615.             _loc2_ = "0" + _loc2_;
  616.          }
  617.          if(100 > param1)
  618.          {
  619.             _loc2_ = "0" + _loc2_;
  620.          }
  621.          return _loc2_;
  622.       }
  623.       
  624.       public function ___BottomNav1_readMode(param1:NavigationEvent) : void
  625.       {
  626.          readModeHandler(param1);
  627.       }
  628.       
  629.       private function browseByCoverHandler(param1:NavigationEvent) : void
  630.       {
  631.          trace("browseByCoverHandler " + param1.eventData);
  632.          content.browseByCoverToggle();
  633.       }
  634.       
  635.       private function faultHandler(param1:FaultEvent) : void
  636.       {
  637.          var _loc2_:String = null;
  638.          _loc2_ = "There was a problem loading the contents file \'data/contents.xml\'";
  639.          _loc2_ += "\n" + param1.message;
  640.          Alert.show(_loc2_,"Error");
  641.       }
  642.       
  643.       private function set splashImage(param1:String) : void
  644.       {
  645.          var _loc2_:Object = null;
  646.          _loc2_ = this._623572788splashImage;
  647.          if(_loc2_ !== param1)
  648.          {
  649.             this._623572788splashImage = param1;
  650.             dispatchEvent(PropertyChangeEvent.createUpdateEvent(this,"splashImage",_loc2_,param1));
  651.          }
  652.       }
  653.       
  654.       private function set splashString(param1:String) : void
  655.       {
  656.          var _loc2_:Object = null;
  657.          _loc2_ = this._1850815144splashString;
  658.          if(_loc2_ !== param1)
  659.          {
  660.             this._1850815144splashString = param1;
  661.             dispatchEvent(PropertyChangeEvent.createUpdateEvent(this,"splashString",_loc2_,param1));
  662.          }
  663.       }
  664.       
  665.       public function ___BottomNav1_endPage(param1:NavigationEvent) : void
  666.       {
  667.          endPageHandler(param1);
  668.       }
  669.       
  670.       private function bottomNavSelectPageHandler(param1:NavigationEvent) : void
  671.       {
  672.          selectPageHandler(param1);
  673.          content.hideTabs();
  674.       }
  675.       
  676.       public function __content_yearSelect(param1:NavigationEvent) : void
  677.       {
  678.          yearSelectHandler(param1);
  679.       }
  680.       
  681.       private function selectPageHandler(param1:NavigationEvent) : void
  682.       {
  683.          trace("selectPageHandler " + param1.currentTarget);
  684.          pageSelect(param1.eventData as int);
  685.       }
  686.       
  687.       [Bindable(event="propertyChange")]
  688.       private function get splashImage() : String
  689.       {
  690.          return this._623572788splashImage;
  691.       }
  692.       
  693.       public function set dataRequest(param1:HTTPService) : void
  694.       {
  695.          var _loc2_:Object = null;
  696.          _loc2_ = this._385513595dataRequest;
  697.          if(_loc2_ !== param1)
  698.          {
  699.             this._385513595dataRequest = param1;
  700.             dispatchEvent(PropertyChangeEvent.createUpdateEvent(this,"dataRequest",_loc2_,param1));
  701.          }
  702.       }
  703.       
  704.       public function set myPrintJob(param1:MyPrintJob) : void
  705.       {
  706.          var _loc2_:Object = null;
  707.          _loc2_ = this._705504356myPrintJob;
  708.          if(_loc2_ !== param1)
  709.          {
  710.             this._705504356myPrintJob = param1;
  711.             dispatchEvent(PropertyChangeEvent.createUpdateEvent(this,"myPrintJob",_loc2_,param1));
  712.          }
  713.       }
  714.       
  715.       private function _Presentation_bindingExprs() : void
  716.       {
  717.          var _loc1_:* = undefined;
  718.          _loc1_ = presentationModel.imageURL;
  719.          _loc1_ = splashImage;
  720.          _loc1_ = splashString;
  721.          _loc1_ = presentationModel;
  722.          _loc1_ = presentationModel;
  723.       }
  724.       
  725.       public function ___TopNav1_searchTab(param1:NavigationEvent) : void
  726.       {
  727.          searchTabHandler(param1);
  728.       }
  729.       
  730.       [Bindable(event="propertyChange")]
  731.       public function get dataRequest() : HTTPService
  732.       {
  733.          return this._385513595dataRequest;
  734.       }
  735.       
  736.       override public function initialize() : void
  737.       {
  738.          var target:Presentation = null;
  739.          var watcherSetupUtilClass:Object = null;
  740.          mx_internal::setDocumentDescriptor(_documentDescriptor_);
  741.          _Presentation_bindingsSetup();
  742.          target = this;
  743.          if(_watcherSetupUtil == null)
  744.          {
  745.             watcherSetupUtilClass = getDefinitionByName("_views_PresentationWatcherSetupUtil");
  746.             watcherSetupUtilClass["init"](null);
  747.          }
  748.          _watcherSetupUtil.setup(this,function(param1:String):*
  749.          {
  750.             return target[param1];
  751.          },_bindings,_watchers);
  752.          super.initialize();
  753.       }
  754.       
  755.       private function yearSelect(param1:int) : void
  756.       {
  757.          var _loc2_:PresentationModel = null;
  758.          var _loc3_:Object = null;
  759.          if(0 > param1 || presentationModel.years.length <= param1)
  760.          {
  761.             trace("error invalid year selected " + param1);
  762.             return;
  763.          }
  764.          _loc2_ = presentationModel.clone();
  765.          _loc2_.currentYear = param1;
  766.          _loc3_ = presentationModel.years.getItemAt(param1);
  767.          _loc2_.issues = _loc3_.issue;
  768.          _loc2_.yearString = _loc3_.value;
  769.          trace("yearSelect year is " + _loc3_.value);
  770.          presentationModel = _loc2_;
  771.       }
  772.       
  773.       private function spreadsTabHandler(param1:Event) : void
  774.       {
  775.          content.spreadsTabToggle();
  776.       }
  777.       
  778.       public function ___TopNav1_browseByCover(param1:NavigationEvent) : void
  779.       {
  780.          browseByCoverHandler(param1);
  781.       }
  782.       
  783.       [Bindable(event="propertyChange")]
  784.       public function get myPrintJob() : MyPrintJob
  785.       {
  786.          return this._705504356myPrintJob;
  787.       }
  788.       
  789.       private function demoHandler(param1:Event) : void
  790.       {
  791.          trace("demoHandler");
  792.          demo.visible = true;
  793.          demo.playMovie();
  794.       }
  795.       
  796.       public function set demo(param1:Demo) : void
  797.       {
  798.          var _loc2_:Object = null;
  799.          _loc2_ = this._3079651demo;
  800.          if(_loc2_ !== param1)
  801.          {
  802.             this._3079651demo = param1;
  803.             dispatchEvent(PropertyChangeEvent.createUpdateEvent(this,"demo",_loc2_,param1));
  804.          }
  805.       }
  806.       
  807.       private function _Presentation_bindingsSetup() : void
  808.       {
  809.          var binding:Binding = null;
  810.          if(!_bindings)
  811.          {
  812.             _bindings = [];
  813.          }
  814.          if(!_watchers)
  815.          {
  816.             _watchers = [];
  817.          }
  818.          binding = new Binding(this,function():String
  819.          {
  820.             var _loc1_:* = undefined;
  821.             var _loc2_:* = undefined;
  822.             _loc1_ = presentationModel.imageURL;
  823.             return _loc1_ == undefined ? null : String(_loc1_);
  824.          },function(param1:String):void
  825.          {
  826.             myPrintJob.imageURL = param1;
  827.          },"myPrintJob.imageURL");
  828.          _bindings[0] = binding;
  829.          binding = new Binding(this,function():String
  830.          {
  831.             var _loc1_:* = undefined;
  832.             var _loc2_:* = undefined;
  833.             _loc1_ = splashImage;
  834.             return _loc1_ == undefined ? null : String(_loc1_);
  835.          },function(param1:String):void
  836.          {
  837.             bg.bgImage = param1;
  838.          },"bg.bgImage");
  839.          _bindings[1] = binding;
  840.          binding = new Binding(this,function():String
  841.          {
  842.             var _loc1_:* = undefined;
  843.             var _loc2_:* = undefined;
  844.             _loc1_ = splashString;
  845.             return _loc1_ == undefined ? null : String(_loc1_);
  846.          },function(param1:String):void
  847.          {
  848.             bg.splashString = param1;
  849.          },"bg.splashString");
  850.          _bindings[2] = binding;
  851.          binding = new Binding(this,function():PresentationModel
  852.          {
  853.             return presentationModel;
  854.          },function(param1:PresentationModel):void
  855.          {
  856.             content.presentationModel = param1;
  857.          },"content.presentationModel");
  858.          _bindings[3] = binding;
  859.          binding = new Binding(this,function():PresentationModel
  860.          {
  861.             return presentationModel;
  862.          },function(param1:PresentationModel):void
  863.          {
  864.             _BottomNav1.presentationModel = param1;
  865.          },"_BottomNav1.presentationModel");
  866.          _bindings[4] = binding;
  867.       }
  868.    }
  869. }
  870.  
  871.